<template>
    <div>
        <Title :title="title"></Title>
        <div ref="bottom1" style="height: 150px; padding-top: 25px;"></div>
    </div>
</template>
<script>
// 2.引入折线图表函数
import { Line } from '@antv/g2plot';
// 引入get请求
import { get } from '@/utils/request'
// 引入moment 处理时间 
import moment from 'moment'
export default {
    // 存放vue变量
    data() {
        return {
            title: '实时噪音曲线',
            Data: []
        }
    },
    methods: {
        // 封装加载图表方法
        loadLine() {
            const line = new Line(this.$refs.bottom1, {
                data: this.Data,
                padding: 'auto',
                xField: 'insert_time',
                yField: 'noise',
                xAxis: {
                    // type: 'timeCat',
                    tickCount: 5,
                },
            });

            line.render();
        },
        // 请求后端数据 
        async getTempData() {
            let res = await get('/dashboard/pageQueryTodayData', { page: 1, pageSize: 100 });
            console.log(res, '获取响应');
            // 声明一个临时数组存放处理好的数据
            let temp = [];
            res.data.list.forEach((item, index, arr) => {

                arr[0].noise = 40;

                item.insert_time = moment(item.insert_time).format('HH:mm');
                if (index % 10 == 0) {
                    temp.push(arr[index])
                }
            });
            this.Data = temp;
        }
    },
    // 生命周期 vue实例与模板绑定完成 此时可以获取dom元素
    async mounted() {
        // 隐式创建微任务
        await this.getTempData();
        this.loadLine();
    }
}
</script>
<style scoped></style>
